﻿using Fadada.FASC.SDK.DotNetCore.Attributes;
using Newtonsoft.Json;

namespace Fadada.FASC.SDK.DotNetCore.Model
{
    [RemoteService("/sign-task/get-url","POST")]
    public class SignTaskGetUrl
    {
        /// <summary>
        /// 签署任务ID。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "signTaskId", 
            Required = Required.Always)]
        public string SignTaskId { get; set; }

        /// <summary>
        /// 参与方或发起方类型：
        /// initiator: 发起方
        /// filler: 填写方
        /// signer: 签署方
        /// cc: 抄送方。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "actorType",
            Required = Required.AllowNull)]
        public string ActorType { get; set; }

        /// <summary>
        /// 参与方在签署任务中被设定的唯一标识。
        /// 只有actorType=initiator时该参数才是可忽略的，否则
        /// 该参数是必填参数。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "actorId",
            Required = Required.AllowNull)]
        public string ActorId { get; set; }

        /// <summary>
        /// 重定向地址，用户在页面上操作完成之后重定向跳转到
        /// 该地址。若为空，则默认跳转到法大大的操作结果页。
        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore, PropertyName = "redirectUrl",
            Required = Required.AllowNull)]
        public string RedirectUrl { get; set; }
    }
}